package com.sqx.modules.cityInfo.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.sqx.common.utils.Result;
import com.sqx.modules.cityInfo.entity.CityInfo;
import com.sqx.modules.cityInfo.vo.CityInfoVo;

import java.util.List;

/**
 * 城市 服务类
 * @author wuChang
 * @since 2024-01-23
 */

public interface CityInfoService extends IService<CityInfo> {
    /**
     * 新增或修改城市
     */
    Result saveCityInfo (CityInfo cityInfo);

    /**
     * 获取改城市列表
     */
    IPage<CityInfo> getCityInfoList(Integer page, Integer limit, CityInfo cityInfo);

    /**
     * 判断当前城市是否已开启
     * @param cityName 城市名称
     * @return true:已开启 false 未开启
     */
    boolean isOpenCity(String cityName);

    Result updateEnable(Long id);

    Result setAgentCity(Long id, Long userId);

    Result updateCityRate(CityInfo cityInfo);

    IPage<CityInfoVo> getHasAgentCityList(Integer page, Integer limit, CityInfoVo cityInfoVo);
}
